home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Grab Bag
/
Shareware Grab Bag.iso
/
007
/
baswin22.arc
/
READ.ME
< prev
next >
Wrap
Text File
|
1987-01-27
|
6KB
|
128 lines
Updates to BASWIND2
Version 2.2 January 24, 1987
CHANGES IN THIS RELEASE
Module SCROLL:
A minor fix to this module. The values of ULR and ULC are adjusted by decre-
menting them by 1 at the beginning of the module to accomodate the zero ref-
erence required by the DOS call. However, at two points in the program, a
SCREEN function was used to determine screen attributes which used the mod-
ified values of ULR and ULC without making allowance for this adjustment.
This has been corrected in this release.
Also in this release the ARCHIVE file has been updated to include all the
source code referenced in the previous 2.1 release, but which was inadvert-
ently left out of that ARCHIVE. My apologies to all for this oversight.
Added to archive the source for DEMO1 as a means of demonstrating typical
uses of the BASWIND2 routines.
--------------------------------------------------------------------------------
Version 2.1 December 10, 1986
CHANGES IN THIS RELEASE
Module NEWSCRN:
This module had the most serious problem - it would not work correctly with
monochrome or Hercules cards. Blame this on me - I don't have a monochrome
card so I never tested it. However, this version HAS been tested on a mono
monitor and has been verified to work. As part of the fix, the names of the
called procedures have been changed for SCRNSAVE and SCRNREST to SAVESCRN
and RESTSCRN. This will insure that you don't inadvertently get the old
versions linked into your corrected programs. Also, as shown in the new doc-
umentation file included in this release, the calling convention is somewhat
different. Now there are two integers to be passed in the CALL: the first
tells the routine whether to test retrace status when using a color monitor
to prevent snow, and the second passes the location of the first element in
the array obtained by the VARPTR function. A typical call would be as follows:
10 DIM SCRNDATA%(2000):'4000 bytes, holds one screen
.
.
.
.
80 NOTEST%=0
90 FIRST%=VARPTR(SCRNDATA%(0))
100 CALL SAVESCRN(NOTEST%,FIRST%)
The NOTEST% parameter is used primarily for the IBM CGA adapter. When you set
this variable to 0, testing is forced; which will eliminate snow on the screen
but will also slow down operation somewhat. Non-IBM color cards and the EGA do
not require this testing, so if you set the variable to 1, testing will be
bypassed and the screen writes will be as fast as possible. Regardless of the
value of this variable, a monochrome system will be automatically detected and
testing will be defeated since it is not required.
Module MAKEWIND:
There have been no changes to this module; however, I have found that when the
routine is compiled, it requires the /D switch on the compiler to generate
error-checking code in order to work correctly. I discovered that when the /D
option was omitted, when a 'growing' window was requested, the growing effect
was not properly executed. Instead of growing from the center outward, it in-
stead grew from the right-hand side to the left! I still don't know what is
causing this, so for this reason I am including in this release the source
code to this and the SCROLL modules so that you BASIC jocks that are more
knowledgeable than I am can see what is going on and perhaps find the culprit.
Adding the /D switch makes the size of the module considerably larger; so there
is some benefit to leaving it off if the problem can be corrected. If anyone
finds out what the problem is, please post me a message on Compuserve (ID #
72456,2325) or GEnie (Address: D.EVERS) and I'll spread the word around.
Module SCROLL:
No changes in this release.
Module USERLIB2:
This is an addition to this release of BASWIND. In the first release, I decided
not to distribute a User Library form of these routines because of the fact that
they required the presence of the USERLIB module distributed with QuickBASIC.
Since I assume this module is copywrited by Microsoft, I chose to let the
user create his own User Library at his end using his copy of USERLIB. However,
a problem arose in that because of the fact that the MAKEWIND module was com-
piled using the /D switch, it included some code linked in from the BRUN20.LIB
module which made reference to the module ABSOLUTE. The problem was that
USERLIB.OBJ also includes a module ABSOLUTE, which resulted in a Duplicate
Module Name error occuring during the BUILDLIB procedure. As far as I was able
to determine, this error was more of a warning nature than a severe one, as I
simply ignored it and used the library anyway. (By the way, there are no calls
to the module ABSOLUTE anywhere in BASWIND). However, this proved to be dis-
turbing to many people (and rightly so); so I have taken a step of questionable
legality by including in this package a module USERLIB2; which is the Quick-
BASIC USERLIB.ASM edited to remove the ABSOLUTE procedure and reassembled. I
don't really believe this presents much of an infringement problem; since
everyone who buys QuickBASIC gets a copy of USERLIB and it is of no use to
anyone without QuickBASIC. Anyway, using this USERLIB2 module instead of the
original USERLIB will correct once and for all the Duplicate Module Name
problem.
I sincerely apologize for any inconvenience these problems might have caused
anyone using BASWIND2; and I hope that these corrected programs solve any
problems you might have. If not, please do not hesitate to leave me a note
on Compuserve or GEnie; or to drop me a line at my home address given in the
documentation file.
Thank you for your support,
Dave Evers